-
Couldn't load subscription status.
- Fork 8
Migrate to .slnx solution format exclusively #793
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Migrate to .slnx solution format exclusively #793
Conversation
Co-authored-by: BenjaminMichaelis <[email protected]>
dotnet sln migrate (https://learn.microsoft.com/en-us/dotnet/core/tools/dotnet-sln#migrate) to add in a .slnx file to live alongside our .sln file for now (.sln for backwards compatibility for now)|
@copilot maybe we can drop the .sln file and just keep the .slnx? We get this otherwise. Run dotnet restore |
Co-authored-by: BenjaminMichaelis <[email protected]>
Done in commit 38e768f. The .sln file has been removed and the Dockerfile updated to reference EssentialCSharp.Web.slnx. This resolves the CI error about multiple solution files. Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR migrates the repository from the traditional .sln format to the modern .slnx solution file format exclusively, removing the legacy file to prevent CI/CD conflicts and embrace the newer, more readable XML-based solution format.
- Generated new
EssentialCSharp.Web.slnxfile usingdotnet sln migratecommand - Removed the traditional 63-line
.slnfile in favor of the 19-line.slnxformat - Updated Dockerfile references to use the new solution file format
Reviewed Changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| EssentialCSharp.Web.slnx | New XML-based solution file containing all project references and solution items |
| EssentialCSharp.Web.sln | Removed traditional solution file to prevent multiple solution file conflicts |
| EssentialCSharp.Web/Dockerfile | Updated dotnet commands to reference .slnx instead of .sln file |
Overview
This PR migrates the repository from the traditional
.slnformat to the modern.slnxsolution file format exclusively, removing the legacy.slnfile to avoid CI/CD conflicts.Changes
EssentialCSharp.Web.slnxusingdotnet sln migratecommandEssentialCSharp.Web.slnfile to prevent "multiple solution files" errors in CI.slnxinstead of.slnWhy This Change?
The
.slnxformat is the modern solution file format introduced in recent .NET SDK versions. It provides:By using only the
.slnxformat, we eliminate the MSB1011 error that occurred when multiple solution files were present in the same directory.Verification
The .slnx solution file has been verified to work correctly:
dotnet restoreautomatically finds and uses the.slnxfiledotnet buildworks without specifying a solution filedotnet testruns successfully (54/55 tests pass - one pre-existing network connectivity test failure).slnxfor Docker buildsReferences
Original prompt
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.